Increasingly, enterprises and users are using the Internet to conduct business and personal affairs. In response to this, enterprises are developing applications and services to cover virtually all aspects of these transactions. One area of particular concern is security.
More specifically, users, with their various transactions, process a lot of applications which need credentials for validation so that the users can gain access to different types of assets. In that context, Single Sign On (SSO) capabilities with those applications is a much needed feature for any industry to reduce the overhead of credential management at both the user level and also at the organization level.
There are some credential processing options available to reduce that overhead and to store a user's credentials and thereby give the user a facility to achieve seamless login to those applications of interest. But for this to be achieved successfully, the applications need to be altered/rewritten so that the application can internally call the externally exposed Application Programming Interfaces (APIs) of the credential mechanisms.
To highlight the issue, consider that nowadays Linux, as an operating system (OS), is used by a majority of the end users in a variety of industry domains. With Linux, GNOME is widely used as desktop environment which is built on top of GTK (GNOME Tool Kit) framework. So, making GNOME GUI applications SSO enabled requires rewriting of all those applications. This is quite difficult and virtually impossible to achieve in any practical or realistic time frame.
Still another problem exists that is associated with tracking a user's actions for a particular GTK application. Today, user's actions are tracked based on the coordinates of the display. That means, the movement of the user's cursor is tracked and coordinate values are stored for purposes of recording data associated with the user's action with the application. So, any realignment of the application on the display device will tear apart any replay mechanism based on the previously captured data. Essentially, the user's intention is based on the user's actions at runtime within the display. But, this may not always be what the user wants.
Therefore, improved techniques are needed for enhancing applications without modifying the application code associated with those applications.